home *** CD-ROM | disk | FTP | other *** search
- /* SampleStorageActual.h */
-
- #ifndef Included_SampleStorageActual_h
- #define Included_SampleStorageActual_h
-
- /* SampleStorageActual module depends on */
- /* MiscInfo.h */
- /* Audit */
- /* Debug */
- /* Definitions */
- /* FixedPoint */
- /* SampleConsts */
- /* Memory */
-
- #include "FixedPoint.h"
- #include "SampleConsts.h"
-
- struct SampleStorageActualRec;
- typedef struct SampleStorageActualRec SampleStorageActualRec;
-
- /* create a new sample storage object, with the array zeroed out */
- SampleStorageActualRec* NewSampleStorageActual(NumBitsType NumBits,
- NumChannelsType NumChannels, long NumSampleFrames);
-
- /* dispose of a sample storage object */
- void DisposeSampleStorageActual(SampleStorageActualRec* Storage);
-
- /* get the number of bits the sample storage object contains */
- NumBitsType GetSampleStorageActualNumBits(SampleStorageActualRec* Storage);
-
- /* get the number of channels the storage object contains */
- NumChannelsType GetSampleStorageActualNumChannels(
- SampleStorageActualRec* Storage);
-
- /* get the number of sample frames the object contains */
- long GetSampleStorageActualNumFrames(
- SampleStorageActualRec* Storage);
-
- /* get the value of a sample frame */
- largefixedsigned GetSampleStorageActualValue(SampleStorageActualRec* Storage,
- long Index, ChannelType WhichChannel);
-
- /* change the value of a sample frame */
- void SetSampleStorageActualValue(SampleStorageActualRec* Storage,
- long Index, ChannelType WhichChannel,
- largefixedsigned NewValue);
-
- /* get a reference to the raw data. The raw data will either be an array of chars */
- /* (for 8-bit data) or an array of shorts (for 16-bit data). There will be */
- /* GetSampleStorageActualNumFrames + 1 frames; the extra one at the end is to */
- /* make anti-aliasing more efficient, and repeats the second-last word of data */
- char* GetSampleStorageActualRawData(SampleStorageActualRec* Storage);
-
- /* get a copy of a particular channel of data from the sample */
- largefixedsigned* SampleStorageActualGetChannelFixed(
- SampleStorageActualRec* Storage, ChannelType WhichChannel);
-
- #endif
-